<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
	"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
	<head>
		<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
		<title>Licenses</title>
		<style type="text/css" media="screen">
			html, body, p, h1, h2, a {
				font-family: sans-serif;
			}
			body {
				padding: 0px;
				margin: 0px;
			}
			body h1 {
				text-align: center;
			}
			body img {
				background-color: white;
				border: 2px solid #777777;
				float: right;
				padding: 4px;
			}
			div.clear {
				clear: both;
			}
		</style>
	</head>
	<body>

<h1>Informationen über die Darstellungen im Graphen</h1>
<h2>Viewabhängigkeiten</h2>
<p>Diese Ansicht zeigt alle Tabellen und Views an, die mindestens eine Abhängigkeit zu einem anderen Objekt haben.
Infolgedessen besteht die Darstellung aus einem Wald von einzelnen, freien Bäumen.</p>
<p>Die Knotenobjekte sind in den Farben Gelb und Blau verfügbar. Dabei symbolisieren die
gelben Knoten Views und die blauen Knoten Tabellen. Sowohl Tabellen als auch Views
beinhalten den Namen und die Anzahl der Spalten. </p>
<p>Jedes Knotenobjekt ist mit einem über die rechte Maustaste erreichbaren Kontextmenü
ausgestattet. Damit kann dieser Knoten unmittelbar aus der Ansicht entfernt werden. Außerdem
können weitere Informationen in der „Verbindungsübersicht“ angezeigt werden.
Die Farben der Kanten im Graphen sind farblich durch den Kontext ihrer Abhängigkeit
bestimmt. Während grüne Kanten positive Abhängigkeiten repräsentieren, sind negative
Abhängigkeiten durch rote Kanten her vorgehoben. </p>
<p>Positive Abhängigkeiten sind solche, in welchen der <i>WHERE</i>-Bedingungsteil der 
<i>SELECT</i>-Anfrage eine Enthaltungsmenge durch Operatoren wie "=" oder "LIKE"
spezifiziert. Neutrale <i>SELECT</i>-Anweisungen sind immer positiv. Negative Abhängigkeiten sind solche, in welchen der
WHERE-Bedingungsteil explizit Daten ausschließt - beispielsweise mittels einem <i>NOT EXISTS</i> verbunden mit einem Subselect.
Die Kantenobjekte zeigen in einer kleinen Box die genauen Details der Abhängigkeit, wenn der Mauszeiger über sie gehalten wird. </p>
<h2>Triggerabhängigkeiten</h2>
<p> In dieser Ansicht werden alle vorhandenen Trigger des ausgewählten Schemas angezeigt, auch die Trigger ohne Abhängigkeiten. </p>
<p>Die Triggerobjekte und die Verbindungen (Kanten) werden in dieser Darstellung grün
angezeigt, solange es zu diesem Objekt keine besondere Auffälligkeit gibt. In einer
Oracle-Datenbank kann ein Trigger ein Mutating-Table-Problem auslösen. Ein Mutating-
Table-Problem ensteht, wenn der Trigger zeilenorientiert ist und auf die Tabelle, auf die er
definiert ist, lesend oder manipulierend zugreift. Ein Trigger, der diese Problem her vorrufen
kann, wird in der Ansicht orange dargestellt und es gibt einen Hinweistext in diesem
Objekt. Weiterhin wird eine rote Kante von diesem Trigger auf sich selbst angezeigt.
Die zweite Auffälligkeit, die gesondert dargestellt wird, ist die Rekursion unter den Triggern.
Durch Data Manipulation Language (DML)-Befehle im Triggerrumpf können weitere
Trigger angestoßen werden, was durchaus gewollt sein kann. Die Abhängigkeiten von
Triggern können allerdings zu ungewollten rekursiven Aktivitäten führen. Daher werden
diese Trigger ebenfalls gesondert angezeigt. Die Farbe der Triggerobjekte ist rot und
die rekursiven Kanten, die diese Trigger verbinden, ebenfalls.
</p>
<h2>Entity-Relationship-Diagramm</h2>
<p>Die Anzeige des Entity-Relationship-Diagramm ist eine weitere Funktionalität der Anwendung.
Im Gegensatz zu anderen Produkten beschränkt sich die Anzeige jedoch auf die
lose Darstellung der Abhängigkeiten ohne weitere Details wie Kardinalität oder Art der
Assoziation. Einzig und allein die Richtung der Abhängigkeit wird dargestellt, weshalb die
Visualisierung auch durch einen Digraph realisiert wird. Aus diesem Grund ist die Bezeichnung
des einfachen Entity-Relationship-Diagramm für eine Ausgabe vorzuziehen.</p>

<h2>Einzelansicht</h2>
<p>Die Einzelansicht bietet die Möglichkeit zu sehen, welche Datenbankobjekte mit einer bestimmten Tabelle in Verbindung stehen. 
Hierzu wird eine Auswahlmaske im linken Menü zur Verfügung gestellt, in der eine der zur Verfügung stehenden Tabellen ausgewählt werden kann. 
Nach Auswahl der Tabelle wird nun ein Graph generiert, der die ausgewählte Tabelle mit allen mit ihr in Verbindung stehenden Datenbankobjekten anzeigt. 
Diese Ansicht hat beispielsweise den Vorteil, dass auf einen Blick erkannt werden kann, welche Objekte von Änderungen an der gewählten Tabelle betroffen sein könnten. </p>

	</body>
</html>